Opera Software

Making applications for Opera TV Store

Introduction

The Opera TV Store is a moderated, hosted catalogue of TV-specific web applications. Developers can submit and share their apps through this portal. It presents end users with a storefront (itself a web-based application) which allows them quick and easy access to the applications.

Sample Opera TV Store and an application in both minimized and full-screen mode
Sample Opera TV Store and an application in both minimized and full-screen mode

Most applications in the Opera TV Store will be presented as static thumbnail images in the dashboard. Selected content partners will additionally have the opportunity to provide a dynamic minimized view directly in the dashboard itself (inside an iframe) - this allows for live updates (e.g. weather information) and notifications. In both cases, end users will be able to select an application and launch it in full-screen mode.

Opera TV Store architecture diagram
A simple overview of the Opera TV Store architecture

The full-screen web applications themselves are not hosted directly on Opera's servers. The Opera TV Store only acts as a directory, with references to the actual URLs of the applications. However, if an application provides a minimized version running in the dashboard, the necessary files will be served directly from Opera's own servers.

Building your application

Applications for the Opera TV Store are, in essence, regular web applications, which are rendered by the Opera Devices SDK browsing environment on the user's TV. As such, developers can tap into all the traditional web technologies (HTML5, CSS 3, JavaScript, SVG) supported by the Opera browser. See our documentation on web specifications supported by Opera (and in particular our comparison of support in different Opera product lines) for a thorough breakdown.

Although the Opera Devices SDK is built on the same core rendering engine as our desktop browsers, there are still platform-specific APIs and subtle integration differences that developers need to be aware of. For this reason, it is recommended that developers test their applications on an actual TV running the Opera SDK browser and/or with the Opera TV Emulator. The package comes with initial documentation on how to set up and run the emulator, how to debug web applications (locally or remotely) with Opera Dragonfly, and information on SDK-specific features that may be present on devices.

Developing web content for TV brings with it its own challenges - from a difference in user interaction to considerations regarding device capabilities and performance optimisation. For an introduction to some of the necessary adaptations and techniques see our documentation on creating web content for TV and other articles in the TV section of the Dev.Opera developer resource.

Requirements specific to Opera TV applications

Due to the way in which applications will be integrated into, and launched from, the Opera TV Store, developers need to be aware of the following additional requirements:

Resolution

All TV Store applications have to support 1280×720 resolution. Other resolutions (1920×1080, 960×540) are optional.

APIs for application

All TV Store applications should use the Opera TV Store API, which includes the Functional Keys API and Closing Application API. This API can easily be added to an application with the inclusion of the following script element:

<script src="http://tv.opera.com/js-api/api.js"></script>

Functional Keys API

The Functional Keys API provides a set of device-specific keycode constants to correctly handle remote control key events. Please check the Functional Keys specification for further details.

Closing application API

Once an application is launched from the dashboard, it is effectively opened full screen in a new window. The Opera Devices SDK rendering the portal and application will, by default, not present any further standard interface elements to the user. However, users will be able to close the application and return to their dashboard via the remote control's EXIT and/or RETURN key. It's recommended, but not required, that developers provide an explicit option or button in their UI to close the application with the custom opera.app.close() method.

Minimized views

Selected applications can provide a live, interactive view directly inside the portal's dashboard. As this option is only provided to selected content partners, developers wishing to take advantage of this functionality should contact tvstore-content@opera.com directly for further information.

Submitting to the Opera TV Store

Once your application is ready, it can be submitted to the Opera TV Store. Log in to the Publishing Portal and follow the steps required in the submission dialog. You will need to provide additional information about your application:

Additionally, developer will need to assign their application to one predefined category provided by the Opera TV Store's catalogue.

Please contact Opera at tvstore-content@opera.com if you need to have possibility to further limit the availability of your application by:

Once submitted, the only way to modify the application's metadata is to submit a new version - developers will not have direct access to edit the information stored in the portal.

When you submit your application, we will evaluate it according to a set of acceptance criteria. If it doesn't satisfy all of them, the application will be rejected, so read them carefully. You can track the status at the submitted application page.

Acceptance criteria

Your application must satisfy the following acceptance criteria:

If the above criteria are satisfied, your application undergoes additional testing, to see that it works on our reference devices. Your application may also need to undergo a review process by device manufacturers before being made available on their platforms.

An application that does not satisfy the criteria or fails the testing will be rejected, and you will be given information on the submitted applications page. After you have fixed the problems, you can resubmit the application by clicking the "Upgrade" button next to the package name.

When your application satisfies all criteria, it will be published on the Opera TV Store and you will receive a notification.